package com.itheima.edu.info.manager.dao;

import com.itheima.edu.info.manager.domain.Student;

public class StudentDao {
    private static Student[] stus = new Student[5];

    public boolean addStudent(Student stu) {
        // 1. 创建学生对象数组
        // 2. 添加学生到数组
        // 2.1 定义变量index-1，假设数组已经全部存满，没有null的元素
        int index = -1;
        // 2.2 遍历数组取出每一个元素，判断是否是null
        for (int i = 0; i < stus.length; i++) {
            // 2.3 如果为null，让index变量记录当前索引位置，并使用break结束循环遍历
            if(stus[i] == null){
                index = i;
                break;
            }
        }
        // 3. 返回是否添加成功的boolean类型数据
        if(index == -1){
            // 装满了
            return false;
        }else{
            // 没装满，正常添加学生对象数据
            stus[index] = stu;
            return true;
        }
    }

    public Student[] findAllStudent() {
        return stus;
    }

    public void deleteStudentById(String id) {
        int index = getIndex(id);
        stus[index] = null;
    }

    public int getIndex(String id){
        int index = -1;
        for (int i = 0; i < stus.length; i++) {
            if(stus[i] != null && stus[i].getId().equals(id)){
                index = i;
            }break;
        }
        return index;
    }

    public void updateStudent(String updId, Student stu) {
        int index = getIndex(updId);
        stus[index] = stu;
    }
}
